1. Technical Field
The present invention relates generally to a communications system and in particular to a method and system for routing data traffic within the communications system. Still more particularly, the present invention relates to a system employed for routing real-time data traffic in an Internet Protocol (IP) communications network.
2. Description of the Related Art
The development of computerized information resources such as the xe2x80x9cInternetxe2x80x9d and the proliferation of xe2x80x9cWebxe2x80x9d browsers, allow users of data-processing systems to link with other servers and networks, and thus retrieve vast amounts of electronic information heretofore unavailable in an electronic medium. Such electronic information is increasingly displacing more conventional means of information transmission such as newspapers, magazines, and even television. In electronic communications, a set of computer networks which are possibly dissimilar from one another are joined together by xe2x80x9cgatewaysxe2x80x9d that handle data transfer and the conversion of messages from the sending network to the protocols utilized by the receiving network, with packets if necessary. A gateway is a device utilized to connect dissimilar networks (i.e., networks utilizing different communication protocols) so that electronic information can be passed from one network to the other. Gateways transfer electronic information converting such information to a form compatible with the protocols utilized by the second network for transport and delivery. The term xe2x80x9cInternetxe2x80x9d is an abbreviation for xe2x80x9cinternetwork,xe2x80x9d and refers commonly to the collection of networks and gateways that utilize the TCP/IP suite of protocols, which are well-known in the art of computer networking. TCP/IP is an acronym for xe2x80x9cTransport Control Protocol/Internet Protocol,xe2x80x9d a software protocol developed by the U.S. Department of Defense for communication between computers.
The evolution of personal computers over the last decade has accelerated the xe2x80x9cWebxe2x80x9d and xe2x80x9cInternetxe2x80x9d toward useful everyday applications. Nearly every computer sold over the last several years has or will, at some point, become xe2x80x9conlinexe2x80x9d to an Internet service provider. Somewhere between 20 and 30 million people around the globe utilize some form of Internet service on a regular basis. The graphical portion of the World Wide Web itself is usually stocked with more than twenty-two million xe2x80x9cpagesxe2x80x9d of content,xe2x80x9d with over one million new pages added every month.
Free or relatively inexpensive computer software applications such as Internet xe2x80x9csearch enginesxe2x80x9d make it simple to track down Internet sites where an individual can obtain a topic of interest. The market for Internet access and related applications is explosive and is growing faster than expected, doubling in size approximately every three months.
Advancements in communications arise from changing user needs and demands. Previously, public network needs were driven by telephoning, voice data. Data traffic has grown slowly until recently. With the lower cost in telecommunications and the higher increase in processing power of computers, the numbers of users accessing communications networks has increased. The needs of these users include, for example, video telephone, low cost video conferencing, imaging, High Definition Television (HDTV), and other applications requiring multimedia data transfers. Multimedia combines different forms of media in the communication of information between a user and a data processing system such as a personal computer or network computer. A multimedia application is an application that uses different forms of communications within a single application. Multimedia applications may, for example, communicate data to a user on a computer via audio, text, and video simultaneously. Such multimedia applications are usually bit intensive, real time, and very demanding on communications networks.
Internet Protocol (IP) networks are technology driving the Internet. The rise of these networks is primarily due to their acceptance as the layer 3 protocol in the enterprise networks. Most personal computers (PCs) now use transmission control protocol/IP (TCP/IP) as their networking protocol. IP has even gained acceptance as the wide area protocol since it is about 25-30% more efficient than Asynchronous Transfer Mode (ATM).
The kinds of traffic running over IP networks is of two major types. First, elastic traffic or non-real-traffic which is primarily data file transfer. Most of this traffic utilizes TCP as its transport level protocol and it can withstand delay quite well, but any corruption of data must be re-transmitted. Second, the inelastic or real-time traffic is interactive voice, video or data-conferencing. This kind of traffic does not withstand delay well since late information in an interactive session is of no use. This kind of traffic uses Real Time Protocol (RTP) as the transport protocol.
Running real-time traffic over IP networks has other significant problems also. Currently, there is no way of reserving bandwidth end-to-end in an IP network. Each IP packet takes its own route through the network. Therefore, each packet gets to its destination (in theory) through a different route and can have a different delay in getting to its destination. This causes delay variance or jitter at the destination where the packets have to be xe2x80x9cplayedxe2x80x9d for the destination user. Since most IP networks rely on routers to switch traffic and these routers are quite often based on software switching, they can introduce excessive delay for real-time services. Furthermore, a real-time IP packet can get stuck behind a long packet which can be as much as 1500 bytes. This will add significant delay to the real-time packet even if routing speed is increased.
The Internet Engineering Task Force (IETF) has standardized an approach to reserve resources (bandwidth, and switching capacity) in routers. This standard is known as Resource Reservation Protocol (RSVP). In this approach, the packet scheduler in each router must look at the packet origination and destination address and sometimes the IP port and then consult its RSVP tables to see if this packet has a reservation and then make a decision to forward it ahead of others. This places a significant additional load on the scheduler which makes serving a large number of RSVP flows traversing through a router very difficult or impossible. Most router manufacturers do not explicitly reserve resources in each router on the path as specified in the standard. Additionally, RSVP does not distinguish between data flows and voice flows. The number of data flows may be two (2) orders of magnitude more than the number of voice flows.
In the original IP standard, there was a field provided in the IP header to differentiate between types of packets. This is the type of service field. Five types of services are defined in the IP standard and another 11 possible types are yet undefined. The service types are enforced at the packet scheduler in the router which can give preferential treatment to some types of service. In addition, the weight or the link cost utilized in OSPF for routing can yield a different value for each type of service. Various kinds of priority mechanisms have been proposed for type of service enforcement. One of them is called fair queuing which can divide the link bandwidth into multiple types of service such that any type of service cannot exceed its allocated bandwidth when the other types of service are utilizing their bandwidth, but when the other types are not utilizing their bandwidth then one type of service can exceed its share of bandwidth. One of these mechanisms is called weighted fair queuing (WFQ) which can allocated any amount of bandwidth to each type of service instead of equal amount to all.
Another set of standards called H.323 (or H.323v2) have been proposed to do call control (i.e. make connections) of real-time service on IP networks. This feature allows endpoints or terminals wanting to make connections to negotiate bandwidth and coding requirements before the connection is established. In this standard there are three key players, endpoints, gatekeepers, and gateways. End-points are terminals which need to make connections. They request the connection through a gatekeeper (if one is on the network) and they also negotiate the connection parameters. Gatekeepers are entities that do bandwidth control (on LANs) and routing of connection packets towards the destination terminal. A gateway is an entity which can be thought of as a collection of end-points, but these entities also translate from other bearer protocols (such as TDM) to the IP protocol. Note that although each display distinct functions for the purpose of the claims, all three may be referred to generically as a node.
The Open Shortest Path First (OSPF) protocol is a TCP/IP Internet routing protocol. OSPF is classified as an Interior Gateway Protocol (IGP), i.e. it distributes routing information between routers belonging to a single autonomous system. It is intended to be utilized within an IP network under common administration. OSPF also provides for the authentication of routing updates, and utilizes IP multicast when sending/receiving the updates. OSPF routes packets based solely on the destination IP address found in the IP packet header. IP packets are routed xe2x80x9cas isxe2x80x9dxe2x80x94they are not encapsulated in any further protocol headers as they transit the Autonomous System (AS). OSPF is a dynamic routing protocol. It quickly detects topological changes in the AS (such as router interface failures) and calculates new loop-free routes after a period of convergence.
OSPF enables the routers to exchange information about their interfaces (whether they are up or down, how fast they go, and to whom they connect) and maintain a complete, synchronized, link state database in every router. It provides rapid, deterministic calculation of Internet routes and optimized route calculations.
Routing protocols define the rules that routers utilize to communicate with each other. Routing protocols dynamically provide the network topology information necessary to choose paths amongst routers, allowing routers to automatically choose routes and to alter them when network changes occur. Beyond these basics, routing protocols vary greatly in design, capability, implementation, and impact on network infrastructure.
By far the most widely implemented routing protocol is the Routing Information Protocol (RIP). RIP was the first common TCP/IP routing protocol and is supported by most routers. RIP became a component of TCP/IP when it was included with Berkeley Standard Distribution (BSD) UNIX in 1982. Even though RIP has many limitations, RIP""s simplicity and interopability have spurred its implementation in TCP/IP networks worldwide.
In today""s complex internetworking environments, especially on the Internet, RIP""s limitations have become most apparent. RIP does not scale well to larger networks, consuming large amounts of network bandwidth. Also, RIP lacks several key features that can make today""s networks much more responsive and flexible.
Therefore, it would desirable to have an improved IP communications system that reduces the amount of hardware required, reduces the end-to-end delay, tolerates faults, and employs inexpensive technology. Additionally, it would be further advantageous to have an improved IP communications system that consumes less power and is scalable to handle varying amounts of total traffic.
It is one object of the present invention to provide an improved method and system for a communications system.
It is another object of the present invention to provide an improved system and method for routing data traffic within the communications system.
It is yet another object of the present invention to provide an improved system and method for routing real-time data traffic in an Internet Protocol communications network.
The above features are achieved as follows. A system is disclosed for routing of data traffic on a communications network. The system comprises of a plurality of gatekeepers interlinked to form a network wherein the plurality of gatekeepers control bandwidth and routing of data packets towards destination terminals. The system further comprises plurality of routers which aggregate real time flow of data packets through said gatekeepers, and terminals which are connected to the network via the gatekeepers and which negotiate connection parameters. Finally, a control means for directing real time flow of said data packets from one endpoint terminal to another utilizing the gatekeepers and the routers is disclosed.
In accordance with a preferred embodiment of the present invention, the system utilizes defined protocols which permit the shortest path between nodes on the network to be determined based on cost and efficiency. These shortest paths are saved within databases present in the system and are utilized to route the data. Second shortest paths are also determined to enable for continued transfer of data in the event the shortest paths are unavailable.
The above as well as additional objectives, features, and advantages of the present invention will become apparent in the following detailed written description.